home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HPAVC
/
HPAVC CD-ROM.iso
/
PO-NW20.ZIP
/
NEWS.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1997-03-23
|
4KB
|
283 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER009
Integer INTEGER014
String STRING001
String TSTRING002(4)
String STRING003
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
Int INT001
Int INT002
Int INT003
Declare Function FUNCTION001() Integer
Declare Function FUNCTION002() String
Declare Procedure PROC001(Integer INTEGER010, Integer INTEGER011, Integer INTEGER012, Integer INTEGER013)
Declare Procedure PROC002(Integer INTEGER007, Integer INTEGER008, String STRING004)
Declare Procedure PROC003()
Declare Procedure PROC004()
;------------------------------------------------------------------------------
While ((TokCount() == 0)) STRING003 = FUNCTION002()
STRING003 = GetToken()
PROC004()
While (Exist(PPEPath() + "news" + STRING003 + ".pcb")) Print "@POFF@@CLS@"
DispFile PPEPath() + "news" + STRING003 + ".pcb", 1
Goto LABEL001
PrintLn "@CLS@■ ansibg not found. aborted."
Wait
End
:LABEL001
Print "@PON@@X07"
INTEGER001 = 1
INTEGER002 = FUNCTION001()
While ((INTEGER003 < INTEGER002)) PROC001(INTEGER004, INTEGER005, INTEGER001, INTEGER003)
PROC001(INTEGER004, INTEGER005, INTEGER001, INTEGER002 - 1)
:LABEL002
While (1) STRING001 = Inkey()
While ((STRING001 <> "")) While (((STRING001 == "DOWN") || (STRING001 == "2"))) If ((INTEGER001 < INTEGER002 - INTEGER003)) Inc INTEGER001
PROC001(INTEGER004, INTEGER005, INTEGER001, INTEGER003)
Goto LABEL003
While (((STRING001 == "UP") || (STRING001 == "8"))) If ((INTEGER001 > 1)) Dec INTEGER001
PROC001(INTEGER004, INTEGER005, INTEGER001, INTEGER003)
Goto LABEL003
While (((STRING001 == Chr(13)) || (STRING001 == Chr(27)))) PROC003()
:LABEL003
Goto LABEL002
End
;------------------------------------------------------------------------------
Procedure PROC004()
Int INT001
While (Exist(PPEPath() + "news" + STRING003 + ".cfg")) FOpen 1, PPEPath() + "news" + STRING003 + ".cfg", 0, 0
FGet 1, INTEGER003
FGet 1, INTEGER005
FGet 1, INTEGER004
FGet 1, INTEGER006
INT001 = 1
Goto LABEL004
INT001 = INT001 + 1
:LABEL004
While ((INT001 <= 4)) FGet 1, TSTRING002(INT001)
FClose 1
Goto LABEL005
PrintLn "@CLS@■ no configfile found. aborted."
Wait
End
:LABEL005
EndProc
;------------------------------------------------------------------------------
Procedure PROC002(Integer INTEGER007, Integer INTEGER008, String STRING004)
String STRING005
STRING005 = STRING004
While ((InStr(STRING005, "■") <> 0)) STRING005 = TSTRING002(4) + STRING004
AnsiPos INTEGER007, INTEGER008
STRING005 = RTrim(STRING005, " ")
Print STRING005
Goto LABEL006
STRING005 = "@Y00" + STRING004
STRING005 = ReplaceStr(STRING005, "@Y00", TSTRING002(1))
STRING005 = ReplaceStr(STRING005, "@Y01", TSTRING002(2))
STRING005 = ReplaceStr(STRING005, "@Y02", TSTRING002(3))
STRING005 = Trim(STRING005, " ")
If (InStr(STRING005, "@CENTER@") <> 0) STRING005 = StripStr(STRING005, "@CENTER@")
STRING005 = Trim(STRING005, " ")
STRING005 = Space((INTEGER006 - Len(StripAtx(STRING005)) - INTEGER004) / 2) + STRING005
If (InStr(STRING005, "@RIGHT@") <> 0) STRING005 = StripStr(STRING005, "@RIGHT@")
STRING005 = Trim(STRING005, " ")
STRING005 = Space(INTEGER006 - Len(StripAtx(STRING005)) - INTEGER004) + STRING005
AnsiPos INTEGER007, INTEGER008
STRING005 = RTrim(STRING005, " ")
Print STRING005
:LABEL006
EndProc
;------------------------------------------------------------------------------
Function FUNCTION001() Integer
Int INT002
String STRING006
Integer INTEGER010
INT002 = 0
STRING006 = ""
While (Exist(PPEPath() + "news.txt")) FOpen 1, PPEPath() + "news.txt", 0, 0
:LABEL007
While ((InStr(STRING006, "■ END") == 0)) Inc INT002
FGet 1, STRING006
Goto LABEL007
FClose 1
Goto LABEL008
PrintLn "@CLS@■ newsfile not found. aborted."
Wait
End
:LABEL008
FUNCTION001 = INT002
EndFunc
;------------------------------------------------------------------------------
Procedure PROC001(Integer INTEGER010, Integer INTEGER011, Integer INTEGER012, Integer INTEGER013)
Int INT003
String STRING007
FOpen 1, PPEPath() + "news.txt", 0, 0
INT003 = 1
Goto LABEL009
INT003 = INT003 + 1
:LABEL009
While ((INT003 <= INTEGER012 - 1)) FGet 1, STRING007
INT003 = 1
Goto LABEL011
:LABEL010
INT003 = INT003 + 1
:LABEL011
While ((INT003 <= INTEGER013)) FGet 1, STRING007
AnsiPos INTEGER010, INTEGER011 + INT003 - 1
Print Space(INTEGER006 - INTEGER004)
PROC002(INTEGER010, INTEGER011 + INT003 - 1, STRING007)
Goto LABEL010
FClose 1
EndProc
;------------------------------------------------------------------------------
Function FUNCTION002() String
String STRING009
Integer INTEGER014
Boolean BOOLEAN001
BOOLEAN001 = 0
:LABEL012
While ((BOOLEAN001 == 0)) INTEGER014 = 1 + Random(8)
STRING009 = I2S(INTEGER014, 10)
If (Exist(PPEPath() + "news" + STRING009 + ".pcb")) If Exist(PPEPath() + "news" + STRING009 + ".cfg") BOOLEAN001 = 1
Goto LABEL012
FUNCTION002 = STRING009
EndFunc
;------------------------------------------------------------------------------
Procedure PROC003()
Print "@X07@CLS@"
EndProc
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 4 End
; 3 Wait
; 18 Goto
; 34 Let
; 6 Print
; 3 PrintLn
; 22 If
; 1 DispFile
; 3 FOpen
; 3 FClose
; 8 FGet
; 2 Inc
; 1 Dec
; 3 AnsiPos
; 4 EndProc
; 2 EndFunc
;
;
; ■ Functions used :
;
; 1 /
; 31 +
; 10 -
; 9 ==
; 4 <>
; 2 <
; 3 <=
; 1 >
; 3 ||
; 2 Len(
; 3 Space()
; 2 Chr()
; 4 InStr()
; 2 RTrim()
; 3 Trim()
; 1 Random()
; 2 StripAtx()
; 1 Inkey()
; 9 PPEPath()
; 1 GetToken()
; 5 Exist()
; 1 I2S()
; 1 TokCount()
; 3 ReplaceStr()
; 2 StripStr()
;
;------------------------------------------------------------------------------
;
; Analysis flags : No flag
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 0 For/Next
; 0 While/EndWhile
; 0 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------